﻿namespace Anmlz.Model.Entities
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;

    public class Creature
    {
        public int Id { get; set; }
        [MaxLength(256)]
        public string Name { get; set; }
        [MaxLength(256)]
        public string OfficialName { get; set; }
        public DateTime DateOfBirth { get; set; }
        public int CreatureTypeId { get; set; }
        public CreatureType CreatureType { get; set; }
        public int? BreedId { get; set; }
        public Breed Breed { get; set; }
        public int CreatureColorId { get; set; }
        public CreatureColor CreatureColor { get; set; }
        public int CreatureSizeTypeId { get; set; }
        public CreatureSizeType CreatureSizeType { get; set; }
        public bool Male { get; set; }
        [MaxLength(256)]
        public string Tattoo { get; set; }
        public int? FatherId { get; set; }
        public int? MotherId { get; set; }
        public int OwnerId { get; set; }
        public User Owner { get; set; }
        public string Description { get; set; }
        public int CreatureClassId { get; set; }
        public CreatureClass CreatureClass { get; set; }
        public int AvatarId { get; set; }
        public Image Avatar { get; set; }
        public ICollection<ImageToCreature> ImageToCreatures { get; set; }
        public bool Passport { get; set; }
        public bool Vaccinations { get; set; }
        public bool Microchip { get; set; }
        public CreatureStatus CreatureStatus { get; set; }
    }
}
